package gameEngine.agents.teamMateModel;
/**
 * a representation of an agent for the team mate model instead of holding BasicAgent instances 
 * for each agent model
 * @author alon
 *
 */
public interface AgentMock extends Comparable<AgentMock> {
	/**
	 * return the competence of the agent
	 * @return
	 */
	public double getAgentCompitance();
	/**
	 * return agents epsilon greedy
	 * @return
	 */
	public double getAgentEGreedy();
	/**
	 * set competence
	 * @param compitance
	 */
	public void setAgentCompitance(double compitance);
	/**
	 * set epsilon greedy
	 * @param eGreedy
	 */
	public void setAgentEGreedy(double eGreedy);
	/**
	 * returns the agents id
	 * @return
	 */
	public int getId();
	
	/**
	 * create a clone
	 * @return Agent Mock copy
	 */
	public AgentMock clone();
}
